<%@ page pageEncoding="UTF-8" %>
<%@ page import="util.*" %>
<%@ page import="entidades.*" %>

<%@ page import="java.util.HashMap" %>
<%@ page import="com.google.gson.Gson" %>

<%
String svc = request.getParameter("service");
if(svc != null)
    {
	String resultado = "";

	try{
		// El servicio 'load' devuelve los datos de un usuario.
		if(svc.compareTo("load") == 0)
			{
			String id = request.getParameter("id");
			Usuario user = new Usuario(id);

			if(user.getId() != 0)
				{ resultado = user.toJson(); }
			else
				{ resultado = Json.getErrorMsj("No existe ningun usuario con id = " + id); }
			}

		// El servicio 'save' guarda los datos de un usuario.
		if(svc.compareTo("save") == 0)
			{
                        Usuario user = new Usuario();
			user.setId( request.getParameter("id") );
			user.setUsername( request.getParameter("username") );
			user.setPassword( MySQL.toMD5(request.getParameter("password")) );
			user.setNombre( request.getParameter("nombre") );
			user.setApellido( request.getParameter("apellido") );
			user.setPerfilId( request.getParameter("perfilId") );
                        if (request.getParameter("activo") != null &&
                                request.getParameter("activo").equals("checked")){
                            user.setActivo(true);
                        }else{
                            user.setActivo(false);
                        }

			user.guardar();

			resultado = Json.getOkMsj();
			}

		// El servicio 'delete' elimina a un usuario.
		if(svc.compareTo("delete") == 0)
			{
			Usuario.borrar( request.getParameter("id") );
			resultado = Json.getOkMsj();
			}

		}catch(Exception e)
			{ resultado = Json.getErrorMsj(e); }

	out.print(resultado);
    }
%>
